package com.kfm.util;

import org.apache.commons.codec.digest.Md5Crypt;

import java.nio.charset.StandardCharsets;

public class MD5Util {

    private static final String MD5_SALT = "kfamiao4";

    public static String encode(String str){
        return encode(str, MD5_SALT);
//            // 不可逆
//            MessageDigest md5 = MessageDigest.getInstance("md5");
//            md5.update(str.getBytes(StandardCharsets.UTF_8));
//            // e10adc3949ba59abbe56e057f20f883e
//            return new BigInteger(1, md5.digest()).toString(16);
    }

    public static String encode(String str, String salt){
        return Md5Crypt.md5Crypt(str.getBytes(StandardCharsets.UTF_8), salt, "");
    }

    public static String encode(String str, int count){
        String temp = str;
        for (int i = 0; i < count; i ++){
            temp = encode(temp);
        }
        return temp;
    }

    public static void main(String[] args) {
        System.out.println(encode("123456"));
    }
}
